<!--
/*    Author: jose
 *    Correo: josedelgado@ula.ve
 *    Fecha: 08/04/2011
 *	  Encoding: UTF-8
 */
-->
 
<?php
#INCLUIMOS EL ARCHIVO DE LAS VARIABLES DE CONEXION

class Conectar {

	private $host;
	private $usuario;
	private $bd;
	private $password;
	private $conector;
	private $cursor;
	private $filas;
	private $last_id;

	#CONSTRUCTOR
	public function __construct($DataBase) {
		$this->host = HOST;
		$this->usuario = USUARIO;
		$this->bd = $DataBase;
		$this->password = PASSWORD;
		$this->conector = '';
		$this->cursor = '';
		$this->filas = Array();
		$this->last_id = '';
	}

	#DECLARACION DE GETER
	public function getHost() { return $this->host; }

	public function getUsuario() { return $this->usuario; }

	public function getBd() { return $this->bd; }

	public function getPassword() { return $this->password; }

	public function getConector() { return $this->conector; }

	public function getCursor() { return $this->cursor; }

	public function getFilas() { return $this->filas; }

	public function getLast_id() { return $this->last_id; }

	#DECLARACION DE SETTER
	public function setHost($x) { $this->host = $x; }

	public function setUsuario($x) { $this->usuario = $x; }

	public function setBd($x) { $this->bd = $x; }

	public function setPassword($x) { $this->password = $x; }

	public function setConector($x) { $this->conector = $x; }

	public function setCursor($x) { $this->cursor = $x; }

	public function setFilas($x) { $this->filas = $x; }

	public function setLast_id($x) { $this->last_id = $x; }

	#CONECTA CON EL GESTOR DE BASE DE DATOS
	public function conectarGbd() {
		$this->conector = mysql_connect($this->host, $this->usuario, $this->password);
		if(!$this->conector) {
			echo mysql_error();
			return false;
		}
		return true;
	}

	#SELECIONAMOS LA BASE DE DATOS
	public function seleccionarBd() {
		mysql_select_db($this->bd,$this->conector);
		if(mysql_error($this->conector)) {
			echo mysql_error($this->conector);
			return false;
		}
		mysql_query('SET @@sql_mode = \'STRICT_TRANS_TABLES\'');
		mysql_query("SET NAMES 'utf8'");
		return true;
	}

	#EJECUTAMOS EL QUERY (RETORNAMOS "TRUE" SI SE EJECUTO CORRECTAMENTE DE LO CONTRARIO INPRIMIMOS EL ERROR Y RETORNAMOS FALSE)
	public function ejecutarQuery($sql) {
		$this->cursor = mysql_query($sql,$this->conector);
		if(mysql_error($this->conector)) {
			echo mysql_error($this->conector);
			return false;
		}
		return true;
	}

	#EJECUTAMOS EL QUERY (RETORNAMOS "TRUE" SI SE EJECUTO CORRECTAMENTE DE LO CONTRARIO RETORNAMOS EL ERROR)
	public function ejecutarQueryE($sql) {
		$this->cursor = mysql_query($sql,$this->conector);
		if(mysql_errno($this->conector))
		return mysql_errno($this->conector);
		return true;
	}

	#CONTAMOS EL NUMRO DE REGISTRO QUE RETORNA EL QUERY
	public function obtenerNumRecords() {
		return mysql_num_rows($this->cursor);
	}

	#TRANFORMAMOS EN ARRAY
	public function obtenerArrayRecords($tipo_result='MYSQL_BOTH') {
		unset($this->filas);
		while($row = mysql_fetch_array($this->cursor,constant($tipo_result))) //MYSQL_ASSOC,MYSQL_NUM, MYSQL_BOTH
		$this->filas[] = $row;
		if(mysql_error($this->conector)){
			echo mysql_error($this->conector);
			return false;
		}
		return true;
	}

	#OBTENER EL ULTIMO ID
	public function obtenerUltimoId() {
		$this->last_id = mysql_insert_id($this->conector);
		if(mysql_error($this->conector)) {
			echo mysql_error($this->conector);
			return false;
		}
		return true;
	}

	#INICIAR TRANSACCION
	public function iniciarTransaccion() {
		mysql_query('START TRANSACTION');
		if(mysql_error($this->conector)) {
			echo mysql_error($this->conector);
			return false;
		}
		return true;
	}

	#CULMINAR TRANSACCION
	public function culminarTransaccion() {
		if(mysql_error($this->conector)) {
			mysql_query('ROLLBACK',$this->conector);
			return false;
		}
		else{
			mysql_query('COMMIT',$this->conector);
			return true;
		}
	}

	#CERRAR CONECCION
	public function closeConeccion(){
		mysql_close($this->conector);
	}

	#DESTRUCTOR
	public function __destruct() {
	}


}

?>